导航菜单
首页 >  6道常见hadoop面试题及答案解析  > 100道经典Hadoop常见面试/笔试题及答案解析

100道经典Hadoop常见面试/笔试题及答案解析

100道经典Hadoop常见面试/笔试题及答案解析

江左梅郎2017/03/10         

在目前生活中,随着移动互联网科技不断的发展和创新,如今无论是公司还是开发者个人而言,面试都是一项耗时耗钱的项目,从而小讲对于日常Hadoop面试中可能会遇到的问题进行了筛选与汇总。这个是第一版,下周带来第二版(更新版)。

1       单选题 1.1      下面哪个程序负责 HDFS 数据存储。

a)NameNode

b)Jobtracker

c)Datanode 

d)secondaryNameNode

e)tasktracker

答案C datanode

1.2      HDfS 中的 block 默认保存几份?

a)3 份

b)2 份

c)1 份

d)不确定

答案A默认3份

1.3      下列哪个程序通常与 NameNode 在一个节点启动?

a)SecondaryNameNode

b)DataNode

c)TaskTracker

d)Jobtracker

答案D,此题分析:

hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和NameNode运行在不同的机器上。

JobTracker和TaskTracker

JobTracker 对应于 NameNode

TaskTracker 对应于 DataNode

DataNode 和NameNode 是针对数据存放来而言的

JobTracker和TaskTracker是对于MapReduce执行而言的

mapreduce中几个主要概念,mapreduce整体上可以分为这么几条执行线索:obclient,JobTracker与TaskTracker。

1、JobClient会在用户端通过JobClient类将应用已经配置参数打包成jar文件存储到hdfs,并把路径提交到Jobtracker,然后由JobTracker创建每一个Task(即MapTask和ReduceTask)并将它们分发到各个TaskTracker服务中去执行。

2、JobTracker是一个master服务,软件启动之后JobTracker接收Job,负责调度Job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。

3、TaskTracker是运行在多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。TaskTracker都需要运行在HDFS的DataNode上。

1.4      Hadoop 作者

a)Martin Fowler

b)Kent Beck

c)Doug cutting

答案C Doug cutting

1.5      HDFS 默认 Block Size

a)32MB

b)64MB 

c)128MB

答案:B

(因为版本更换较快,这里答案只供参考)

1.6      下列哪项通常是集群的最主要瓶颈:

a)CPU

b)网络

c)磁盘IO 

d)内存

答案:C磁盘

该题解析:

首先集群的目的是为了节省成本,用廉价的pc机,取代小型机及大型机。小型机和大型机有什么特点?

1.cpu处理能力强

2.内存够大

所以集群的瓶颈不可能是a和d

3.网络是一种稀缺资源,但是并不是瓶颈。

4.由于大数据面临海量数据,读写数据都需要io,然后还要冗余数据,hadoop一般备3份数据,所以IO就会打折扣。

1.7      关于 SecondaryNameNode 哪项是正确的?

a)它是 NameNode 的热备

b)它对内存没有要求

c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间

d)SecondaryNameNode 应与 NameNode 部署到一个节点。

答案C

2       多选题 2.1      下列哪项可以作为集群的管理?

a)Puppet 

b)Pdsh 

c)Cloudera Manager

d)Zookeeper

答案:ABD

2.2      配置机架感知的下面哪项正确:

a)如果一个机架出问题,不会影响数据读写

b)写入数据的时候会写到不同机架的 DataNode 中

c)MapReduce 会根据机架获取离自己比较近的网络数据

答案ABC

2.3      Client 端上传文件的时候下列哪项正确?

a)数据经过 NameNode 传递给 DataNode

b)Client 端将文件切分为 Block,依次上传

c)Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工作

答案B,该题分析:

Client向NameNode发起文件写入的请求。

NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。

Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。

2.4      下列哪个是 Hadoop 运行的模式:

a)单机版 

b)伪分布式 

c)分布式

答案ABC

2.5      Cloudera 提供哪几种安装 CDH 的方法?

a)Cloudera manager 

b)Tarball 

c)Yum 

d)Rpm

答案:ABCD

总共100道题常见Hadoop面试/笔试题及答案解析,限于篇幅,这里列出一些,其他的请下载文后附件自行阅读。

文件下载:文件资料需要登录后下载,请先 登录 或 注册

100道常见Hadoop面试题及答案解析-第1版.pdf资源大小:1MB

分享到qq空间分享到QQ空间分享到微信分享到微信分享到qq分享到QQ好友 4

相关推荐: